package com.leetcode.practice.leetcode;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

/**
 * 给你一个字符串 s ，字符串的「能量」定义为：只包含一种字符的最长非空子字符串的长度。
 *
 * 请你返回字符串的能量。
 *
 *  
 *
 * 示例 1：
 *
 * 输入：s = "leetcode"
 * 输出：2
 * 解释：子字符串 "ee" 长度为 2 ，只包含字符 'e' 。
 * 示例 2：
 *
 * 输入：s = "abbcccddddeeeeedcba"
 * 输出：5
 * 解释：子字符串 "eeeee" 长度为 5 ，只包含字符 'e' 。
 * 示例 3：
 *
 * 输入：s = "triplepillooooow"
 * 输出：5
 * 示例 4：
 *
 * 输入：s = "hooraaaaaaaaaaay"
 * 输出：11
 * 示例 5：
 *
 * 输入：s = "tourist"
 * 输出：1
 *
 */
public class No1446 {
    public static void main(String[] args) {
        String str = "tourist";
        System.out.println(new No1446().maxPower(str));
    }

    public int maxPower(String s) {
        int left = 0;
        int right = 0;
        int maxLength = 0;
        char ch;

        for (int i = 1; i < s.length(); i++) {
            ch = s.charAt(i);
            if(s.charAt(left) != ch){
                maxLength = maxLength >= (right - left + 1) ? maxLength : (right - left + 1);
                left = i;
                right = i;
            }else{
                right++;
            }
        }
        return maxLength >= (right - left + 1) ? maxLength : (right - left + 1);
    }

}
